// const express = require('express');
// const router = express.Router();
// const crypto = require('crypto');

const { RETURN_URL = 'admin.free.idcfengye.com' } = process.env;

const callbackIp = RETURN_URL;
const newDate =
  new Date().getFullYear().toString() +
  (new Date().getMonth() + 1).toString() +
  new Date().getDate().toString() +
  '/';
const dirPath = 'oss/file/' + newDate; //oss 文件夹 不存在会自动创建

export const config = {
  dirPath, //oss 文件夹 不存在会自动创建
  bucket: 'njjysw', //oss应用名
  region: 'oss-cn-beijing', //oss节点名
  accessKeyId: 'LTAI5tAFy2bmyQe1MyBbUvzT', //申请的osskey
  accessKeySecret: 'vnMylJM8LtltpKMB5qRPpp83ecEfwA', //申请的osssecret
  callbackIp, //回调ip,一定要能被外网访问的地址。不要用这个地址,我瞎写的，用自己部署服务器地址就ok了。
  callbackPort: 3343, //回调端口
  callbackPath: 'api/ossCallback', //回调接口路径
  expAfter: 60000, //签名失效时间
  maxSize: 1048576000, //最大文件大小
};

// router.get("/ossSign", (req, res) => {
//   const {
//     bucket,
//     region,
//     expAfter,
//     maxSize,
//     dirPath,
//     accessKeyId,
//     accessKeySecret,
//     callbackIp,
//     callbackPort,
//     callbackPath
//   } = config
//   const host = `https://${bucket}.${region}.aliyuncs.com` //你的oss完整地址
//   const expireTime = new Date().getTime() + expAfter
//   const expiration = new Date(expireTime).toISOString()
//   const policyString = JSON.stringify({
//     expiration,
//     conditions: [
//       ['content-length-range', 0, maxSize],
//       ['starts-with', '$key', dirPath]
//     ]
//   })
//   const policy = Buffer(policyString).toString("base64")
//   const if_online_no = RETURN_URL.startsWith("hangzhang007")
//   const Signature = crypto.createHmac('sha1', accessKeySecret).update(policy).digest("base64")
//   const callbackBody = {
//     "callbackUrl": `http` + (if_online_no ? '' : 's') + `://${callbackIp}` + (if_online_no ? `:${callbackPort}` : '') + `/${callbackPath}`,
//     "callbackHost": `${callbackIp}`,
//     "callbackBody": "{\"filename\": ${object},\"size\": ${size}}",
//     "callbackBodyType": "application/json"
//   }
//   const callback = Buffer(JSON.stringify(callbackBody)).toString('base64')
//   res.json({
//     statusCode: 200,
//     message: 'oss签名成功',
//     cc: callbackBody.callbackUrl,
//     result: {
//       Signature,
//       policy,
//       host,
//       'OSSAccessKeyId': accessKeyId,
//       'key': expireTime,
//       'success_action_status': 200,
//       dirPath,
//       callback
//     }
//   })
// })

// router.post("/ossCallback", (req, res, next) => {
//   console.log("wo ying l ")
//   res.json({
//     statusCode: 200,
//     message: 'oss参数回调',
//     result: {
//       ...req.body
//     }
//   })
// })

// module.exports = {
//   router
//   , config
// }
